Request Parameters গ্রহণ করা (getParameter(), getParameterValues()) গাইড ও নোট

Java Technologies - সার্ভলেটস (Servlets) - Request এবং Response Handling
237

HTTP রিকোয়েস্ট প্যারামিটার গুলি সাধারণত ক্লায়েন্ট (ব্রাউজার) থেকে সার্ভারে পাঠানো হয়, এবং সার্ভলেট এসব প্যারামিটার গ্রহণ করে তাদের প্রক্রিয়া করতে সক্ষম। getParameter() এবং getParameterValues() হল দুটি প্রধান মেথড যা সার্ভলেটে HTTP রিকোয়েস্ট প্যারামিটার সংগ্রহ করতে ব্যবহৃত হয়।

এগুলো বিশেষত ওয়েব ফর্ম, URL প্যারামিটার, এবং অন্যান্য ইনপুট থেকে ডেটা সংগ্রহ করার জন্য ব্যবহৃত হয়। চলুন দেখি কিভাবে এই দুটি মেথড ব্যবহার করা হয়।


1. getParameter() মেথড

getParameter() মেথডটি HTTP রিকোয়েস্টে পাঠানো একক প্যারামিটার মূল্য (single value parameter) গ্রহণ করতে ব্যবহৃত হয়। যখন কোনো ফর্মে একটি একক মানের ইনপুট ফিল্ড থাকে, তখন আপনি এই মেথডটি ব্যবহার করে সেই মানটি গ্রহণ করতে পারেন।

Sintax:

String getParameter(String name);

এখানে:

  • name হল প্যারামিটারটির নাম (যেমন ফর্ম ইনপুট ফিল্ডের নাম)।

উদাহরণ: getParameter() ব্যবহার

ধরা যাক, একটি HTML ফর্ম আছে যেটি একটি ইউজারের নাম গ্রহণ করছে:

<form action="hello" method="GET">
    Name: <input type="text" name="username">
    <input type="submit" value="Submit">
</form>

এখন সার্ভলেটের মাধ্যমে এই প্যারামিটার গ্রহণ করা হবে:

@WebServlet("/hello")
public class HelloServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // "username" প্যারামিটার গ্রহণ
        String username = request.getParameter("username");

        // রেসপন্সে ইউজারের নাম প্রিন্ট করা
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<h1>Hello, " + username + "!</h1>");
    }
}

এখানে:

  • getParameter("username") মেথডটি username প্যারামিটারটি গ্রহণ করে এবং সেটি ব্যবহারকারীর নাম হিসেবে রেসপন্সে প্রদর্শন করে।

2. getParameterValues() মেথড

getParameterValues() মেথডটি একটি প্যারামিটার যা একাধিক মান ধারণ করতে পারে (যেমন চেকবক্স বা সিলেক্ট বক্সের জন্য)। এটি সেই প্যারামিটারটির সমস্ত মানের একটি অ্যারে প্রদান করে।

Sintax:

String[] getParameterValues(String name);

এখানে:

  • name হল প্যারামিটারটির নাম।
  • এটি একটি String array ফেরত দেয়, কারণ প্যারামিটারটির একাধিক মান হতে পারে।

উদাহরণ: getParameterValues() ব্যবহার

ধরা যাক, একটি HTML ফর্মে ইউজার একাধিক পছন্দ নির্বাচন করতে পারে (যেমন চেকবক্স):

<form action="preferences" method="GET">
    <input type="checkbox" name="preference" value="Sports"> Sports<br>
    <input type="checkbox" name="preference" value="Music"> Music<br>
    <input type="checkbox" name="preference" value="Reading"> Reading<br>
    <input type="submit" value="Submit">
</form>

এখন সার্ভলেটের মাধ্যমে এই প্যারামিটার গ্রহণ করা হবে:

@WebServlet("/preferences")
public class PreferencesServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // "preference" প্যারামিটারগুলো গ্রহণ
        String[] preferences = request.getParameterValues("preference");

        // রেসপন্সে পছন্দসমূহ প্রিন্ট করা
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        
        if (preferences != null) {
            out.println("<h1>Your Preferences:</h1>");
            for (String pref : preferences) {
                out.println("<p>" + pref + "</p>");
            }
        } else {
            out.println("<h1>No preferences selected!</h1>");
        }
    }
}

এখানে:

  • getParameterValues("preference") মেথডটি preference প্যারামিটারটির সমস্ত মান গ্রহণ করে এবং সেগুলি একটি অ্যারেতে ফেরত দেয়।
  • ইউজার যদি একাধিক চেকবক্স নির্বাচন করে, তবে সেই সমস্ত পছন্দ preferences অ্যারেতে স্টোর হবে এবং ওয়েব পেজে প্রদর্শিত হবে।

3. getParameter() এবং getParameterValues() এর মধ্যে পার্থক্য

মেথডউদ্দেশ্যফেরত দেওয়ার ধরনব্যবহৃত হয় কোন ক্ষেত্রে
getParameter()একক প্যারামিটার গ্রহণ করে, যেমন টেক্সট ইনপুট ফিল্ড।Stringএকক মানের ইনপুট (যেমন টেক্সট ইনপুট)
getParameterValues()একাধিক মানের প্যারামিটার গ্রহণ করে, যেমন চেকবক্স।String arrayএকাধিক মানের ইনপুট (যেমন চেকবক্স, সিলেক্ট বক্স)

4. Request Parameter এর ধরন

  • Text input: যেমন <input type="text" name="username">
  • Radio buttons: একাধিক রেডিও বাটনের মধ্যে একটির মান নির্বাচন করা হয়।
  • Checkboxes: একাধিক চেকবক্সের মধ্যে একাধিক মান নির্বাচন করা হতে পারে।
  • Select menus: ড্রপডাউন বা সিলেক্ট বক্স থেকে এক বা একাধিক মান নির্বাচন করা যেতে পারে।

সারাংশ

getParameter() এবং getParameterValues() হল দুটি গুরুত্বপূর্ণ মেথড যা সার্ভলেটে HTTP রিকোয়েস্ট প্যারামিটার গ্রহণ করার জন্য ব্যবহৃত হয়। getParameter() একক প্যারামিটার গ্রহণ করতে ব্যবহৃত হয়, যেখানে getParameterValues() একাধিক মান ধারণকারী প্যারামিটার (যেমন চেকবক্স বা সিলেক্ট বক্স) গ্রহণ করতে ব্যবহৃত হয়। এই দুটি মেথডের মাধ্যমে আপনি ফর্ম ইনপুট এবং ইউজার থেকে আসা ডেটা সহজে গ্রহণ করে প্রক্রিয়া করতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...